<?php

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
include_once "OperacoesBD.php";
require_once '../model/entity/TIpoRelatorio.php';
include_once 'ConectaDB.php';
/**
 * Description of DBRelatorio
 *
 * @author gabrielbmoro
 */
class DBRelatorio implements OperacoesBD {

    private $conection;
    private $table;
    private $bdconection;
    private $campos;
    private $tipo;
    private $tipoDicionario;
    
    public function __construct($tipo) {
        $this->conection = ConectaDB::singleton();
        $this->bdconection = $this->conection->getBCConection();
        $this->table= "`Formulario_Lista_De_Presenca`";
        $this->tipo= $tipo;
        $this->configurarCamposETabela();
    }

    public function deletar($dado) {
        
    }

    public function editar($campo, $dado) {
        
    }

    public function inserir($dado) {       
        $resultSet = $this->bdconection->query("INSERT INTO " . 
                $this->table . "(" . $this->campos . 
                ") VALUES(" . $dado . ");");
        
        echo $this->table . "\n". $this->campos . "\n". $dado;
        
        if ($resultSet) {
            return true;
        } else {
            return false;
        }
    }

    public function recuperar($campoCondicional) {
        
    }

    private function configurarCamposETabela() {
        $this->tipoDicionario= new TipoRelatorio();
        
        if ($this->tipo == $this->tipoDicionario->getForm_Lista_Presenca()) {
            $this->campos ="`idChaveEstrAluno`," .
                    "`matriculaDoPresente`," .
                    "`dataDoPresente`," . "`hora`,"."`anoSemestre`";
        } else if ($obj instanceof Formulario_Ata_Defesa) {
            $this->table = "`Formulario_Ata_Defesa`";
            $this->campos = array(0 => "`consideracoesFinais`",
                1 => "`idAluno`",
                2 => "`media_Aritmetica`",
                3 => "`notaBanca1`",
                4 => "`notaBanca2`",
                5 => "`notaBanca3`",
                6 => "`notaCorientador`",
                7 => "`notaOrientador`");
        } else if ($obj instanceof Formulario_De_Avaliacao) {
            $this->table = "`Formulario_De_Avaliacao`";
            $this->campos = array(0 => "`comentario`",
                1 => "`conceito`", //REVER
                2 => "`idAluno`",
                3 => "`notaAbrangencia`",
                4 => "`notaClareza`",
                5 => "`notaClarezaGramatica`",
                6 => "`notaConhecimento`",
                7 => "`notaCorretudeTecnica`",
                8 => "`notaEstadoDaArte`",
                9 => "`notaEstrutura`",
                10 => "`notaGramatica`",
                11 => "`notaPlanejamento`",
                12 => "`notaRelevancia`",
                13 => "`somaParcial`");
        } else if ($obj instanceof Formulario_Parecer_Final) {
            $this->table = "`Formulario_Parecer_Final`";
            $this->campos = array(0 => "`idAlunoEstrangeira`",
                1 => "`nota`",
                2 => "`parecerFinal`");
        }
    }

//put your code here
}